home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / util / conv / CarriageRet.lha / CarriageRet / AmigavisionsLib / DOSError.a < prev    next >
Text File  |  1999-01-03  |  3KB  |  120 lines

  1. ********************************************************************************
  2. *
  3. *    Program:    Print DOS Error Text
  4. *    Filename:    DOSError.a
  5. *
  6. *    Contents:    Gibt den Fehlertext des zugehörigen DOS Fehlercodes
  7. *            nach _stderr aus.
  8. *
  9. *    Language:    68000 Assembler
  10. *
  11. *    Author:        Johannes R. Geiss
  12. *
  13. *    Copyright:    Amigavisions
  14. *
  15. *    History:    $HISTORY:
  16. *            1.3 (26-Oct-91) changed JRG
  17. *            1.2 (14-Oct-91) changed JRG
  18. *            1.1 (10-Oct-91) changed JRG
  19. *            1.0 (05-Oct-91) written JRG
  20. *
  21. *    Version:    $VER: DOSError.a 1.3 (26-Oct-91)
  22. *
  23. ********************************************************************************
  24.  
  25.  
  26. *------ Includes
  27.     include 'xref.i'
  28.     include 'call.i'
  29.  
  30.  
  31. *------ Imports
  32.     XLIB    Write
  33.     xref    _DOSBase
  34.     xref    _stderr
  35.  
  36. *------ Exports
  37.     xdef    DOSError
  38.  
  39.  
  40. ********************************************************************************
  41.  
  42.     SECTION DOSError
  43.  
  44. *------ DOSError procedure
  45. *
  46. * Input: d0.l Error-Code (Returncode)
  47.  
  48. DOSError
  49.     tst.l    d0
  50.     beq.s    NoErr
  51.     movem.l d2-d3/a6,-(a7)
  52.     movea.l #NumTab,a0
  53.     movea.l #NT_End,a1
  54. Loop    cmp.l    (a0)+,d0
  55.     beq.s    Found
  56.     addq.l    #4,a0
  57.     cmpa.l    a0,a1
  58.     bne.s    Loop
  59.     move.l    #UknErr,d2
  60.     bra.s    Cont
  61. Found    move.l    (a0),d2
  62. Cont    move.l    _stderr,d1
  63.     movea.l d2,a0
  64.     moveq.l #-1,d3
  65. Loop2    addq.l    #1,d3
  66.     tst.b    (a0)+
  67.     bne.s    Loop2
  68.     CALLDOS Write
  69.     movem.l (a7)+,d2-d3/a6
  70. NoErr    rts
  71.  
  72.  
  73. ********************************************************************************
  74.  
  75.     section data,DATA
  76.  
  77. *------ Datafield
  78. NumTab    dc.l    103,e103,105,e105,120,e120,121,e121
  79.     dc.l    122,e122,202,e202,203,e203,204,e204
  80.     dc.l    205,e205,206,e206,209,e209,210,e210
  81.     dc.l    211,e211,212,e212,213,e213,214,e214
  82.     dc.l    215,e215,216,e216,218,e218,219,e219
  83.     dc.l    220,e220,221,e221,222,e222,223,e223
  84.     dc.l    224,e224,225,e225,226,e226,232,e232
  85.     dc.l    5,e5,10,e10,20,e20
  86. NT_End
  87. UknErr    dc.b    'Unknown error',$0a,0
  88. e103    dc.b    'Insufficient memory',$0a,0
  89. e105    dc.b    'Task table full',$0a,0
  90. e120    dc.b    'Argument line invalid or too long',$0a,0
  91. e121    dc.b    'File is not an object module',$0a,0
  92. e122    dc.b    'Invalid resident library',$0a,0
  93. e202    dc.b    'Object in use',$0a,0
  94. e203    dc.b    'Object already exists',$0a,0
  95. e204    dc.b    'Directory not found',$0a,0
  96. e205    dc.b    'Object not found',$0a,0
  97. e206    dc.b    'Invalid window description',$0a,0
  98. e209    dc.b    'Packet requested type unknown',$0a,0
  99. e210    dc.b    'Invalid stream component name',$0a,0
  100. e211    dc.b    'Invalid object lock',$0a,0
  101. e212    dc.b    'Object not of required type',$0a,0
  102. e213    dc.b    'Disk not validated',$0a,0
  103. e214    dc.b    'Disk is write-protected',$0a,0
  104. e215    dc.b    'Rename across devices attempted',$0a,0
  105. e216    dc.b    'Directory not empty',$0a,0
  106. e218    dc.b    'Device (or volume) not mounted',$0a,0
  107. e219    dc.b    'Seek error',$0a,0
  108. e220    dc.b    'Comment too big',$0a,0
  109. e221    dc.b    'Disk full',$0a,0
  110. e222    dc.b    'File is protected from deletion',$0a,0
  111. e223    dc.b    'File is protected from writing',$0a,0
  112. e224    dc.b    'File is protected from reading',$0a,0
  113. e225    dc.b    'Not a DOS disk',$0a,0
  114. e226    dc.b    'No disk in drive',$0a,0
  115. e232    dc.b    'No more entries in directory',$0a,0
  116. e5    dc.b    'WARNING',$0a,0
  117. e10    dc.b    'ERROR',$0a,0
  118. e20    dc.b    'FAILURE',$0a,0
  119.     END
  120.